package cn.xudy.async.Synchronized;

/**
 * Created by Ulegal on 2017/11/28.
 */
public class MethodSync {

    /*
    * 同步类方法
    * @Task : 测试 synchronized 修饰方法时锁定的是调用该方法的对象
    * @param name  线程的标记名称
    */
    public synchronized void method(String name){
        System.out.println(name + " Start a sync method");
        try{
            Thread.sleep(300);
        }catch(InterruptedException e){}
        System.out.println(name + " End the sync method");
    }

    /**
     *  同步代码块
     * @param name
     */
    public void asyncMethod(String name){
      synchronized (this){
          try {
              System.out.println(" 你好  在方法中添加锁  ！！！！"+name);
              Thread.sleep(3000);
          } catch (InterruptedException e) {
              e.printStackTrace();
              System.out.println(name + " End the sync method");
          }
       }
    }

}





























